Presently, there are a number of search engines which use various algorithms to return a list of results to users in response to a user entering a string of search terms. The search engine typically orders the results from most relevant to least relevant as determined by the particular algorithms used.
In order to find information reflecting a more specific intent—for example, local information, or information related to a specific topic—a user has to input one or more search terms related to that local information or to that specific topic. It is desirable for a search engine to be able to determine a user's intent with few or no additional terms because on some kinds of input devices, such as mobile phones (including smartphones) or PDAs, entering longer search term strings can be cumbersome. Moreover, certain kinds of search terms still may not be sufficiently specific, forcing the user to perform additional, time-consuming searches. For example, if a user includes a term such as “Albany,” it is not clear if the user intends Albany, N.Y.; Albany, Ga., or yet a different Albany.
Reordering of search results to prioritize those results more relevant to the user's specific intent is also desirable for users of internet-capable portable devices such as mobile phones because those devices frequently have smaller screens and keyboards, making it more difficult to navigate through a list of results and more difficult to run additional searches, thus increasing the amount of time and effort needed to find a particular result.
Therefore, there exists in the art a need for an improved search engine having the ability to decipher a user's intent without the use of additional search terms.